gtk4.git
5 years agoa11y: Set up controls relations for scrollbars
Matthias Clasen [Tue, 28 Jul 2020 19:56:30 +0000 (15:56 -0400)]
a11y: Set up controls relations for scrollbars

GtkScrolledWindow knows what its scrollbars control,
so set up the accessible relations for this.

5 years agoa11y: Set accessible roles for GtkImage and GtkPicture
Matthias Clasen [Tue, 28 Jul 2020 19:44:12 +0000 (15:44 -0400)]
a11y: Set accessible roles for GtkImage and GtkPicture

Use the img accessible role for these.
Also update the documentation and add tests.

5 years agoMerge branch 'ebassi/for-master' into 'master'
Matthias Clasen [Tue, 28 Jul 2020 16:30:47 +0000 (16:30 +0000)]
Merge branch 'ebassi/for-master' into 'master'

Ebassi/for master

See merge request GNOME/gtk!2311

5 years agoa11y: Update the valuetext attribute of GtkProgressBar
Emmanuele Bassi [Tue, 28 Jul 2020 12:27:50 +0000 (13:27 +0100)]
a11y: Update the valuetext attribute of GtkProgressBar

Since progress bars can have a label, we should propagate that information
to ATs whenever it's set.

5 years agoa11y: Add an explicit "reset to default" method
Emmanuele Bassi [Tue, 28 Jul 2020 15:46:53 +0000 (16:46 +0100)]
a11y: Add an explicit "reset to default" method

In some cases we explicitly want to unset an accessible attribute; for
instance, an accessible property is gated on a widget property, and if
the widget property gets unset, the accessible property should be reset.

5 years agoa11y: Add proper error reporting to value collection
Emmanuele Bassi [Tue, 28 Jul 2020 15:41:44 +0000 (16:41 +0100)]
a11y: Add proper error reporting to value collection

We're currently overloading NULL to mean both "this value is undefined,
and should be reset to its default" and "the value collection failed".
Let's do error reporting right, by using GError to mean "the collection
failed, for this specific reason"; then, we can use a NULL return value
to signal that the accessible attribute should be reset to its default
value.

This is only relevant for pointer-sized attribute values: strings,
references, and reference lists; numeric, boolean, tristate, and token
values either cannot be undefined, or have a specific "undefined" value.

5 years agoa11y: Fix the error message for the attribute test macros
Emmanuele Bassi [Tue, 28 Jul 2020 14:49:14 +0000 (15:49 +0100)]
a11y: Fix the error message for the attribute test macros

We're missing a closing parenthesis.

5 years agoa11y: Use undefined as default for string attributes
Emmanuele Bassi [Tue, 28 Jul 2020 12:27:05 +0000 (13:27 +0100)]
a11y: Use undefined as default for string attributes

Instead of an empty string.

5 years agoRemove stray gtk-doc annotation
Emmanuele Bassi [Tue, 28 Jul 2020 12:33:05 +0000 (13:33 +0100)]
Remove stray gtk-doc annotation

It confuses the g-i scanner, and gtk-doc.

5 years agoUpdate POTFILES.in and POTFILES.skip
Piotr Drąg [Tue, 28 Jul 2020 15:01:53 +0000 (17:01 +0200)]
Update POTFILES.in and POTFILES.skip

5 years agoMerge branch 'wip/a11y-inspector' into 'master'
Matthias Clasen [Tue, 28 Jul 2020 13:08:28 +0000 (13:08 +0000)]
Merge branch 'wip/a11y-inspector' into 'master'

inspector: Show a11y information

See merge request GNOME/gtk!2302

5 years agoinspector: Show a11y information
Matthias Clasen [Mon, 27 Jul 2020 17:29:21 +0000 (13:29 -0400)]
inspector: Show a11y information

Show a tab for  accessibility information.

This shows the role and the accessible attributes
(states, properties, relations).

For now, changing the values is not possible, and
we only show the explicitly set values. In the future,
we want to show the attributes that are relevant for
the role, regardless of whether they are set or not,
and allow changing some of the attributes (the ones
that are not fully managed by GTK itself).

5 years agoa11y: Add change notification to GtkATContext
Matthias Clasen [Tue, 28 Jul 2020 02:51:34 +0000 (22:51 -0400)]
a11y: Add change notification to GtkATContext

Emit a ::state-change signal when state changes;
this was already a vfunc, but we want to listen
to state changes from the inspector too.

5 years agoMerge branch 'a11y-tests' into 'master'
Emmanuele Bassi [Tue, 28 Jul 2020 11:47:14 +0000 (11:47 +0000)]
Merge branch 'a11y-tests' into 'master'

Add more a11y tests

See merge request GNOME/gtk!2303

5 years agoMerge branch 'wip/baedert/for-master' into 'master'
Matthias Clasen [Tue, 28 Jul 2020 11:44:05 +0000 (11:44 +0000)]
Merge branch 'wip/baedert/for-master' into 'master'

Wip/baedert/for master

See merge request GNOME/gtk!2306

5 years agoMerge branch 'ebassi/for-master' into 'master'
Matthias Clasen [Tue, 28 Jul 2020 11:37:45 +0000 (11:37 +0000)]
Merge branch 'ebassi/for-master' into 'master'

Split GtkProgressBar finalization

See merge request GNOME/gtk!2308

5 years agoSplit GtkProgressBar finalization
Emmanuele Bassi [Tue, 28 Jul 2020 10:43:32 +0000 (11:43 +0100)]
Split GtkProgressBar finalization

We're stopping activity mode when finalizing, which will change
accessible state; this will create a GtkATContext, and since GtkWidget
drops its GtkATContext on dispose(), we're going to end up leaking it on
the floor:

```
2,007 (64 direct, 1,943 indirect) bytes in 1 blocks are definitely lost in loss record 36,242 of 36,944
   at 0x483977F: malloc (vg_replace_malloc.c:307)
   by 0x5222105: g_malloc (gmem.c:106)
   by 0x523E222: g_slice_alloc (gslice.c:1025)
   by 0x523E261: g_slice_alloc0 (gslice.c:1051)
   by 0x534B398: g_type_create_instance (gtype.c:1849)
   by 0x53302EE: g_object_new_internal (gobject.c:1937)
   by 0x53312AF: g_object_new_valist (gobject.c:2262)
   by 0x532FEE8: g_object_new (gobject.c:1780)
   by 0x4B3F942: gtk_test_at_context_new (gtktestatcontext.c:107)
   by 0x491CC50: gtk_at_context_create (gtkatcontext.c:380)
   by 0x4BFEDA0: gtk_widget_accessible_get_at_context (gtkwidget.c:8127)
   by 0x4906079: gtk_accessible_get_at_context (gtkaccessible.c:83)
   by 0x490618F: gtk_accessible_update_state (gtkaccessible.c:137)
   by 0x4ACBA6D: gtk_progress_bar_act_mode_leave (gtkprogressbar.c:690)
   by 0x4ACB4F8: gtk_progress_bar_finalize (gtkprogressbar.c:564)
```

We're also unparenting widgets and changing styles, which is another
potential source of leaks and side effects.

5 years agobitset: Fix typo
Timm Bäder [Tue, 28 Jul 2020 05:48:06 +0000 (07:48 +0200)]
bitset: Fix typo

5 years agowidget-factory: Remove useless separators
Timm Bäder [Tue, 28 Jul 2020 04:14:45 +0000 (06:14 +0200)]
widget-factory: Remove useless separators

They don't serve a purpose and are not relevant for theming purposes.

5 years agogl renderer: Throw inset shadows with all !send values away
Timm Bäder [Sat, 25 Jul 2020 10:12:02 +0000 (12:12 +0200)]
gl renderer: Throw inset shadows with all !send values away

5 years agogl renderer: Linear gradient state tracking
Timm Bäder [Fri, 24 Jul 2020 18:45:22 +0000 (20:45 +0200)]
gl renderer: Linear gradient state tracking

5 years agoinspector: Avoid an uninitialized value
Timm Bäder [Fri, 24 Jul 2020 18:02:26 +0000 (20:02 +0200)]
inspector: Avoid an uninitialized value

5 years agogl renderer: Assert that we have program state
Timm Bäder [Fri, 24 Jul 2020 18:01:49 +0000 (20:01 +0200)]
gl renderer: Assert that we have program state

This is never a problem in reality, just for static analysis.

5 years agogl renderer: Repat node child bounds can't be NULL
Timm Bäder [Fri, 24 Jul 2020 18:01:37 +0000 (20:01 +0200)]
gl renderer: Repat node child bounds can't be NULL

5 years agogl renderer: Remove dead code
Timm Bäder [Fri, 24 Jul 2020 18:01:14 +0000 (20:01 +0200)]
gl renderer: Remove dead code

We aren't using n_corners anyway

5 years agorender nodes: Simplify diffing of uniform border nodes
Timm Bäder [Fri, 24 Jul 2020 17:06:50 +0000 (19:06 +0200)]
render nodes: Simplify diffing of uniform border nodes

5 years agolistbox demo: Remove frames around labels
Timm Bäder [Fri, 24 Jul 2020 17:00:38 +0000 (19:00 +0200)]
listbox demo: Remove frames around labels

Having frames around those labels looks stupid

5 years agogl: Add a gdk_gl_context_has_debug accessor
Timm Bäder [Fri, 24 Jul 2020 16:54:23 +0000 (18:54 +0200)]
gl: Add a gdk_gl_context_has_debug accessor

Check if the label_object_ etc. functions are gonna do anything at all.
The g_type_name_from_instance calls keep poppoing up in profiles.

5 years agoGskTransform: Restructure _to_affine and _to_translation
Timm Bäder [Fri, 24 Jul 2020 16:33:33 +0000 (18:33 +0200)]
GskTransform: Restructure _to_affine and _to_translation

Make the simple cases more explicit.

5 years agogl renderer: Save rectilinearity in clip stack
Timm Bäder [Fri, 24 Jul 2020 16:30:36 +0000 (18:30 +0200)]
gl renderer: Save rectilinearity in clip stack

So we don't have to repeatedly call it in pop_clip()

5 years agoGskTransform: Remove unused function from private header
Timm Bäder [Fri, 24 Jul 2020 15:48:54 +0000 (17:48 +0200)]
GskTransform: Remove unused function from private header

We only use this in gsktransform.c

5 years agogl renderer: More color matrix state tracking
Timm Bäder [Fri, 24 Jul 2020 15:29:22 +0000 (17:29 +0200)]
gl renderer: More color matrix state tracking

5 years agogl renderer: Add contains_rect helper
Timm Bäder [Fri, 24 Jul 2020 15:18:18 +0000 (17:18 +0200)]
gl renderer: Add contains_rect helper

5 years agogl renderer: Add own graphene_rect_intersects
Timm Bäder [Fri, 24 Jul 2020 15:01:32 +0000 (17:01 +0200)]
gl renderer: Add own graphene_rect_intersects

5 years agogsk: Remember border node uniformity
Timm Bäder [Fri, 24 Jul 2020 13:59:45 +0000 (15:59 +0200)]
gsk: Remember border node uniformity

Lots of border nodes have all the same width and the same color.
Renderers might be able to simplifty that, so keep an extra bit per
border node.

5 years agogl renderer: Moar state tracking
Timm Bäder [Fri, 24 Jul 2020 06:49:24 +0000 (08:49 +0200)]
gl renderer: Moar state tracking

Track what we really need to send for inset shadows, which are used
as a border replacement in many cases.

Fishbowl says I can draw around 200-300 more switches per frame like
this too.

5 years agowidget: Compare proper adjusted size to new size when allocating
Timm Bäder [Wed, 22 Jul 2020 05:10:59 +0000 (07:10 +0200)]
widget: Compare proper adjusted size to new size when allocating

We were comparing first but then still modifying the adjusted size later
on, leading to unnecessary resizes.

5 years agogl renderer: Fix scrolledwindow undershoot rendering
Timm Bäder [Wed, 22 Jul 2020 04:35:48 +0000 (06:35 +0200)]
gl renderer: Fix scrolledwindow undershoot rendering

5 years agoa11y: Add spinbutton tests
Matthias Clasen [Tue, 28 Jul 2020 01:17:41 +0000 (21:17 -0400)]
a11y: Add spinbutton tests

Tests the fix in the previous commit.

5 years agospinbutton: Update accessible state
Matthias Clasen [Tue, 28 Jul 2020 01:17:07 +0000 (21:17 -0400)]
spinbutton: Update accessible state

Make sure to set value-max/min/now when the adjustment
changes.

5 years agoa11y: Add scrollbar tests
Matthias Clasen [Tue, 28 Jul 2020 00:28:19 +0000 (20:28 -0400)]
a11y: Add scrollbar tests

Tests the fix in the previous commit.

5 years agowidget: Update accessible state
Matthias Clasen [Tue, 28 Jul 2020 01:05:48 +0000 (21:05 -0400)]
widget: Update accessible state

The sensitive property corresponds to the accessible
property disabled, so update it when sensitivity
changes.

5 years agoscrollbar: Update accessible state
Matthias Clasen [Tue, 28 Jul 2020 00:27:27 +0000 (20:27 -0400)]
scrollbar: Update accessible state

We have the scrollbar role, and are therefore expected
to set value-min/max/now properties.

5 years agoa11y: Add switch tests
Matthias Clasen [Mon, 27 Jul 2020 23:58:08 +0000 (19:58 -0400)]
a11y: Add switch tests

Tests the fix in the previous commit.

5 years agoswitch: Initialize accessible state
Matthias Clasen [Mon, 27 Jul 2020 23:57:13 +0000 (19:57 -0400)]
switch: Initialize accessible state

The checked state defaults to undefined, so we need
to set it to the desired false state.

5 years agoa11y: Add separator tests
Matthias Clasen [Mon, 27 Jul 2020 23:38:51 +0000 (19:38 -0400)]
a11y: Add separator tests

Tests the fix in the previous commit.

5 years agoseparator: Initialize accessible state
Matthias Clasen [Mon, 27 Jul 2020 23:38:01 +0000 (19:38 -0400)]
separator: Initialize accessible state

The orientation property of separators should be
set ab initio.

5 years agoa11y: Add progressbar tests
Matthias Clasen [Mon, 27 Jul 2020 23:26:22 +0000 (19:26 -0400)]
a11y: Add progressbar tests

Test the changes in the previous commit.

5 years agoprogressbar: Fix up acessible state handling
Matthias Clasen [Mon, 27 Jul 2020 23:24:49 +0000 (19:24 -0400)]
progressbar: Fix up acessible state handling

We must initialize the properties in init, since they
are expected to be there ab initio, and we can't call
gtk_accessible_update_property from finalize - it causes
us to recreate an at context and badness follows.

5 years agoa11y: Add dialog and window tests
Matthias Clasen [Mon, 27 Jul 2020 22:56:06 +0000 (18:56 -0400)]
a11y: Add dialog and window tests

Tests the modal property changes in the previous commit.

5 years agoa11y: Set an accessible role for GtkWindow
Matthias Clasen [Mon, 27 Jul 2020 22:25:37 +0000 (18:25 -0400)]
a11y: Set an accessible role for GtkWindow

Use the window accessible role for GtkWindow, and
set the modal accessible property.

5 years agoa11y: Add checkbutton tests
Matthias Clasen [Mon, 27 Jul 2020 22:08:26 +0000 (18:08 -0400)]
a11y: Add checkbutton tests

Tests the fix in the previous commit.

5 years agocheckbutton: Initialize accessible state
Matthias Clasen [Mon, 27 Jul 2020 22:07:26 +0000 (18:07 -0400)]
checkbutton: Initialize accessible state

The checked state of checkbuttons should be FALSE
initially, not UNDEFINED.

5 years agoMerge branch 'wip/chergert/fix-macos-time-conversion' into 'master'
Matthias Clasen [Mon, 27 Jul 2020 20:51:17 +0000 (20:51 +0000)]
Merge branch 'wip/chergert/fix-macos-time-conversion' into 'master'

macos: support ARM/PowerPC time conversion for DisplayLink times

See merge request GNOME/gtk!2301

5 years agomacos: support ARM/PowerPC time conversion for DisplayLink times
Christian Hergert [Mon, 27 Jul 2020 19:49:57 +0000 (12:49 -0700)]
macos: support ARM/PowerPC time conversion for DisplayLink times

When converting DisplayLink frame presentation times, we need to take into
account the arch-specific types. This tracks changes in GNOME/GLib!1566 so
that precision is not lost.

5 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Mon, 27 Jul 2020 18:50:45 +0000 (18:50 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

Matthiasc/for master

See merge request GNOME/gtk!2300

5 years agoUpdate Ukrainian translation
Yuri Chornoivan [Mon, 27 Jul 2020 17:45:19 +0000 (17:45 +0000)]
Update Ukrainian translation

5 years agogtk-demo: Simplify colors demo
Matthias Clasen [Mon, 27 Jul 2020 17:21:59 +0000 (13:21 -0400)]
gtk-demo: Simplify colors demo

Make best use of our new constructors.

5 years agoNEWS: Tweak the wording
Matthias Clasen [Mon, 27 Jul 2020 16:39:43 +0000 (12:39 -0400)]
NEWS: Tweak the wording

5 years agoMerge branch 'a11y-docs' into 'master'
Matthias Clasen [Mon, 27 Jul 2020 15:45:51 +0000 (15:45 +0000)]
Merge branch 'a11y-docs' into 'master'

a11y: Document roles of widgets

See merge request GNOME/gtk!2299

5 years agodocs: Flesh out the role table in the a11y intro
Matthias Clasen [Mon, 27 Jul 2020 15:10:58 +0000 (11:10 -0400)]
docs: Flesh out the role table in the a11y intro

Add cross-references for all the widgets currently
implementing non-default roles.

5 years agoa11y: Document roles of widgets
Matthias Clasen [Mon, 27 Jul 2020 14:46:52 +0000 (10:46 -0400)]
a11y: Document roles of widgets

Add a section to the long description for each
widget that is using a non-default accessible role.

5 years agoUpdate POTFILES.in and POTFILES.skip
Piotr Drąg [Mon, 27 Jul 2020 14:45:40 +0000 (16:45 +0200)]
Update POTFILES.in and POTFILES.skip

5 years agoMerge branch 'ebassi/a11y-fixes' into 'master'
Matthias Clasen [Mon, 27 Jul 2020 14:27:07 +0000 (14:27 +0000)]
Merge branch 'ebassi/a11y-fixes' into 'master'

Ebassi/a11y fixes

Closes #2955

See merge request GNOME/gtk!2298

5 years agoa11y: Test unset relations
Emmanuele Bassi [Mon, 27 Jul 2020 12:58:11 +0000 (13:58 +0100)]
a11y: Test unset relations

We use "NULL" in C to mean "undefined", when it comes to relations that
deal with references or reference lists.

5 years agoa11y: Allow unsetting the relations using NULL
Emmanuele Bassi [Mon, 27 Jul 2020 12:53:05 +0000 (13:53 +0100)]
a11y: Allow unsetting the relations using NULL

Accessible values storing references and reference lists can be unset by
using NULL to mean "undefined"; since we cannot return the NULL value,
we need to intercept it when collecting a value, and replace it with an
undefined GtkAccessibleValue, which is also the value used as the
default for GtkAccessibleRelation values that store a reference or a
reference list.

Fixes: #2955
5 years agodocs: Document a11y attributes
Emmanuele Bassi [Mon, 27 Jul 2020 12:50:01 +0000 (13:50 +0100)]
docs: Document a11y attributes

5 years agoNEWS: Updates
Matthias Clasen [Mon, 27 Jul 2020 12:36:54 +0000 (08:36 -0400)]
NEWS: Updates

5 years agoMerge branch 'ebassi/ci-dags' into 'master'
Emmanuele Bassi [Mon, 27 Jul 2020 12:06:59 +0000 (12:06 +0000)]
Merge branch 'ebassi/ci-dags' into 'master'

ci: Use DAG attributes

See merge request GNOME/gtk!2297

5 years agoMerge branch 'ebassi/new-a11y' into 'master'
Matthias Clasen [Mon, 27 Jul 2020 11:55:19 +0000 (11:55 +0000)]
Merge branch 'ebassi/new-a11y' into 'master'

Accessibility rework

See merge request GNOME/gtk!2239

5 years agoci: Use DAG attributes
Emmanuele Bassi [Mon, 27 Jul 2020 11:44:36 +0000 (12:44 +0100)]
ci: Use DAG attributes

Some jobs can run out of order, as they are entirely self-contained. If
we use the newly added DAG attributes, we can speed up the CI pipeline.

5 years agoa11y: Make GtkATContext.create() public
Emmanuele Bassi [Mon, 27 Jul 2020 10:46:52 +0000 (11:46 +0100)]
a11y: Make GtkATContext.create() public

Implementations of the GtkAccessible interface should have a way to
instantiate the appropriate GtkATContext.

5 years agodocs: Add missing GTK_ACCESSIBLE_VALUE_UNDEFINED
Emmanuele Bassi [Mon, 27 Jul 2020 10:46:07 +0000 (11:46 +0100)]
docs: Add missing GTK_ACCESSIBLE_VALUE_UNDEFINED

5 years agoa11y: Add some more tests
Matthias Clasen [Mon, 27 Jul 2020 05:21:05 +0000 (01:21 -0400)]
a11y: Add some more tests

Test that setting multiple states or properties
at the same time works as expected.

5 years agoAdd some more a11y tests
Matthias Clasen [Mon, 27 Jul 2020 04:22:15 +0000 (00:22 -0400)]
Add some more a11y tests

Add some tests that exercise the accessible machinery
without any connection to widgets.

5 years agoa11y: Be a bit safer against crashes
Matthias Clasen [Mon, 27 Jul 2020 04:21:01 +0000 (00:21 -0400)]
a11y: Be a bit safer against crashes

We are collecting values from varargs and use them
as indices into static arrays. We should at least
do some bounds checking to prevent silly crashes.

5 years agodocs: Expand GtkAccessible documentation
Matthias Clasen [Mon, 27 Jul 2020 02:39:17 +0000 (22:39 -0400)]
docs: Expand GtkAccessible documentation

Add some hints and examples.

5 years agodocs: Add documentation for accessible enumerations
Matthias Clasen [Mon, 27 Jul 2020 02:13:41 +0000 (22:13 -0400)]
docs: Add documentation for accessible enumerations

This is largely taking text from the aria spec.

5 years agodocs: Update GtkAccessibleRole docs
Matthias Clasen [Mon, 27 Jul 2020 01:18:50 +0000 (21:18 -0400)]
docs: Update GtkAccessibleRole docs

Sync up the docs with changed enum values, and document
all the roles that are used in GTK at the moment. All
others are left as "Unused".

5 years agodocs: Fix up some issues in the a11y docs
Matthias Clasen [Mon, 27 Jul 2020 00:54:57 +0000 (20:54 -0400)]
docs: Fix up some issues in the a11y docs

Fix up syntax errors and links in the introductory
section about accessibility.

5 years agodocs: Update a11y docs
Matthias Clasen [Mon, 27 Jul 2020 00:30:36 +0000 (20:30 -0400)]
docs: Update a11y docs

Add some missing functions.

5 years agoMerge branch 'drop-down-constructor' into 'master'
Matthias Clasen [Sun, 26 Jul 2020 23:57:48 +0000 (23:57 +0000)]
Merge branch 'drop-down-constructor' into 'master'

GtkDropDown api revisions

See merge request GNOME/gtk!2286

5 years agoMerge branch 'list-constructors' into 'master'
Matthias Clasen [Sun, 26 Jul 2020 23:56:21 +0000 (23:56 +0000)]
Merge branch 'list-constructors' into 'master'

List constructors

See merge request GNOME/gtk!2296

5 years agogridview: Revise constructors
Matthias Clasen [Sun, 26 Jul 2020 22:50:50 +0000 (18:50 -0400)]
gridview: Revise constructors

Make both gtk_grid_view_new and gtk_grid_view_new_with_factory
take a model as first argument, and make all arguments
allow-none and transfer full.

Update all callers.

5 years agocolumnview: Revise the constructor
Matthias Clasen [Sun, 26 Jul 2020 22:32:50 +0000 (18:32 -0400)]
columnview: Revise the constructor

Make gtk_column_view_new take a model as first argument,
and make it allow-none and transfer full.

Update all callers.

5 years agolistview: Revise constructors
Matthias Clasen [Sun, 26 Jul 2020 22:27:23 +0000 (18:27 -0400)]
listview: Revise constructors

Make both gtk_list_view_new and gtk_list_view_new_with_factory
take a model as first argument, and make all arguments
allow-none and transfer full.

Update all callers.

5 years agodropdown: Revise constructors
Matthias Clasen [Sun, 26 Jul 2020 13:34:08 +0000 (09:34 -0400)]
dropdown: Revise constructors

A dropdown without a model is useless, so accept a model
and expression in the constructor. Allow them to be NULL,
but consume them if given. This makes chained constructors
convenient without breaking language bindings.

Drop gtk_drop_down_set_from_strings() and instead add
gtk_drop_down_new_from_strings().

Update all users.

5 years agoselectionfiltermodel: Make constructor allow-none
Matthias Clasen [Sun, 26 Jul 2020 21:34:44 +0000 (17:34 -0400)]
selectionfiltermodel: Make constructor allow-none

We don't pay attention to item-type anymore, so
drop the item-type property and the _for_item_type()
constructor, and allow passing NULL to the regular
constructor.

We don't make this constructor transfer-full, since
the selection filter model is not a wrapping model
like the others. It is more like fork than a wrap.

5 years agomultiselection: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 21:25:06 +0000 (17:25 -0400)]
multiselection: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Also make the constructor return GtkMultiSelection *.

Update all callers.

5 years agosingleselection: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 21:16:15 +0000 (17:16 -0400)]
singleselection: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agonoselection: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 20:55:43 +0000 (16:55 -0400)]
noselection: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agotreelistmodel: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 20:38:53 +0000 (16:38 -0400)]
treelistmodel: Make constructor transfer full

Make gtk_tree_list_model_new() take the root model
as first argument, and make it transfer full, for
consistency with other wrapping list constructors.

Update all callers.

Still missing here: Make the model property writable,
and allow passing NULL in the constructor.

5 years agosortlistmodel: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 20:25:12 +0000 (16:25 -0400)]
sortlistmodel: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agofilterlistmodel: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 19:55:44 +0000 (15:55 -0400)]
filterlistmodel: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agoslicelistmodel: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 19:38:15 +0000 (15:38 -0400)]
slicelistmodel: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agolistlistmodel: Drop item_type
Matthias Clasen [Sun, 26 Jul 2020 18:37:55 +0000 (14:37 -0400)]
listlistmodel: Drop item_type

We are using G_TYPE_OBJECT throughout, so there
is no need for GtkListListModel to do anything else.

Update all callers.

5 years agomaplistmodel: Make constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 18:20:25 +0000 (14:20 -0400)]
maplistmodel: Make constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agoflattenlistmodel: Make the constructor transfer full
Matthias Clasen [Sun, 26 Jul 2020 14:53:55 +0000 (10:53 -0400)]
flattenlistmodel: Make the constructor transfer full

This is for consistency with other wrapping list constructors.
We want them all to be transfer full, allow-none.

Update all callers.

5 years agoci: Re-enable the accessibility test suite
Emmanuele Bassi [Sun, 26 Jul 2020 19:56:54 +0000 (20:56 +0100)]
ci: Re-enable the accessibility test suite

Now that we have something that is both reliable and local.

5 years agoa11y: Add a simple test case for GtkButton's accessible state
Emmanuele Bassi [Sun, 26 Jul 2020 19:30:35 +0000 (20:30 +0100)]
a11y: Add a simple test case for GtkButton's accessible state